package com.taijihuabao.modules.entity;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.taijihuabao.common.commonutils.LongToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * @title: ExpenseEntity
 * @Author luoxianan
 * @Date: 2021/12/10 14:17
 * @Version 1.0
 */
@Data
@EqualsAndHashCode(callSuper=false)
@ToString(callSuper = true)
@ApiModel("报销审批类")
public class ExpenseEntity extends BaseEntity{

    /**
     * 审批主键
     */
    @ApiModelProperty(value = "审批主键")
    @JsonSerialize(using = LongToStringSerializer.class)
    private Long id;
    /**
     * 审批类型
     */
    @ApiModelProperty(value = "审批类型")
    private String  expenseType;
    /**
     *审批编码
     */
    @ApiModelProperty(value = "审批编码")
    private String  expenseCode;
    /**
     *报销金额
     */
    @ApiModelProperty(value = "报销金额")
    private Double  applyMoney;
    /**
     *报销表id
     */
    @ApiModelProperty(value = "报销表id")
    private String  expenseId;
    /**
     *申请人id
     */
    @ApiModelProperty(value = "申请人id")
    @JsonSerialize(using = LongToStringSerializer.class)
    private Long  applyUserId;

    @ApiModelProperty(value = "申请人姓名")
    private String applyName;
    /**
     *申请部门
     */
    @ApiModelProperty(value = "申请部门")
    private String  applyDeptCode;
    /**
     *审批人id
     */
    @ApiModelProperty(value = "审批人id")
    @JsonSerialize(using = LongToStringSerializer.class)
    private Long  expenseUserId;
    /**
     *审批内容或备注
     */
    @ApiModelProperty(value = "审批备注")
    private String  expenseRemarks;
    /**
     *审批状态
     */
    @ApiModelProperty(value = "审批状态（0审批中 1审批通过 2审批未通过，3驳回）")
    private String  expenseState;
    /**
     *审批任务
     */
    @ApiModelProperty(value = "审批任务")
    private String  expenseTask;

}
